package com.jlmv.poseidon.view;

import java.sql.SQLException;
import java.util.ArrayList;

import javax.annotation.PostConstruct;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.faces.context.FacesContext;
import javax.faces.event.ActionEvent;
import javax.inject.Named;

import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.dao.DataIntegrityViolationException;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Controller;

import com.jlmv.poseidon.entidades.TipoDocumento;
import com.jlmv.poseidon.framework.dao.DaoImp;
import com.jlmv.poseidon.framework.service.TipoDocumentoService;

@Controller
@Named
@ManagedBean
@ViewScoped
public class InicioSesionBean {

	protected static Logger log = Logger.getLogger(InicioSesionBean.class);
	private String usuario;
	private String contrasenha;

	@Autowired
	private TipoDocumentoService daoImp;

	@PostConstruct
	public void init() {
		log.info("init");

	}

	public void onEnviar(ActionEvent actionEvent) {
		log.info("onEnviar");
		log.debug("actionEvent ==> " + actionEvent);
		try {

			TipoDocumento entity2 = new TipoDocumento();
			entity2.setCodigo("04");
			entity2.setNombre("TI");
			entity2.setEstado(TipoDocumento.ESTADO.A);
			entity2.setDescripcion("Tarjeta de Identidad");
			TipoDocumento entity = new TipoDocumento();
			entity.setCodigo("03");
			entity.setNombre("TARJETA DE IDENTIDAD");
			entity.setEstado(TipoDocumento.ESTADO.A);
			entity.setDescripcion("Tarjeta de Identidad");
			// daoImp.create(entity);

			ArrayList<TipoDocumento> arrayList = new ArrayList<TipoDocumento>();
			arrayList.add(entity);
			arrayList.add(entity2);
			daoImp.create(arrayList);
		} catch (DataIntegrityViolationException e) {
			log.error(e, e);
			FacesContext.getCurrentInstance().addMessage("",
					new FacesMessage(e.getMessage()));
		}
	}

	public String getUsuario() {
		return usuario;
	}

	public void setUsuario(String usuario) {
		this.usuario = usuario;
	}

	public String getContrasenha() {
		return contrasenha;
	}

	public void setContrasenha(String contrasenha) {
		this.contrasenha = contrasenha;
	}

}
